[INFO] cloning repository https://github.com/Pds314/Fairy_Chess_GUI
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Pds314/Fairy_Chess_GUI" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPds314%2FFairy_Chess_GUI", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPds314%2FFairy_Chess_GUI'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f6401f2887c4ca37788c5a14c8ed776ec8c37a76
[INFO] checking Pds314/Fairy_Chess_GUI against try#f4690f24e7d9bcb0b168a02b06dd61391e8bd55a for pr-157814-crater-rollup
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPds314%2FFairy_Chess_GUI" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Pds314/Fairy_Chess_GUI
[INFO] finished tweaking git repo https://github.com/Pds314/Fairy_Chess_GUI
[INFO] tweaked toml for git repo https://github.com/Pds314/Fairy_Chess_GUI written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Pds314/Fairy_Chess_GUI on toolchain f4690f24e7d9bcb0b168a02b06dd61391e8bd55a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f4690f24e7d9bcb0b168a02b06dd61391e8bd55a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Pds314/Fairy_Chess_GUI already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f4690f24e7d9bcb0b168a02b06dd61391e8bd55a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7cf07dcec6eec8f91d8fcff9552b5c74122c05467aaf1800be6da9d6f61e2ab2" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8
[INFO] running `Command { std: "docker" "start" "d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8" "/opt/rustwide/cargo-home/bin/cargo" "+f4690f24e7d9bcb0b168a02b06dd61391e8bd55a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8" "/opt/rustwide/cargo-home/bin/cargo" "+f4690f24e7d9bcb0b168a02b06dd61391e8bd55a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling unicode-ident v1.0.20
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling find-msvc-tools v0.1.4
[INFO] [stderr]    Compiling wayland-sys v0.31.7
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]    Compiling cc v1.2.43
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]    Compiling wayland-client v0.31.11
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling syn v2.0.108
[INFO] [stderr]    Compiling toml_parser v1.0.4
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling indexmap v2.12.0
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling wayland-backend v0.3.11
[INFO] [stderr]     Checking memmap2 v0.9.9
[INFO] [stderr]    Compiling wayland-scanner v0.31.7
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]    Compiling toml_edit v0.23.7
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking euclid v0.22.11
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking piper v0.2.4
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]     Checking ahash v0.7.8
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]     Checking endi v1.1.0
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking flate2 v1.1.5
[INFO] [stderr]     Checking async-lock v3.4.1
[INFO] [stderr]     Checking dlv-list v0.3.0
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking ordered-multimap v0.4.3
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking async-fs v2.2.0
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking xdg-home v1.3.0
[INFO] [stderr]     Checking dirs-sys v0.3.7
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]    Compiling by_address v1.2.1
[INFO] [stderr]    Compiling dark-light v1.1.1
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]    Compiling palette v0.7.6
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking dirs v4.0.0
[INFO] [stderr]     Checking rust-ini v0.18.0
[INFO] [stderr]     Checking lyon_geom v1.0.17
[INFO] [stderr]    Compiling zvariant_utils v2.1.0
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking roxmltree v0.20.0
[INFO] [stderr]     Checking dconf_rs v0.3.0
[INFO] [stderr]     Checking fast-srgb8 v1.0.0
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking detect-desktop-environment v0.2.0
[INFO] [stderr]     Checking lyon_path v1.0.16
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking zeno v0.2.3
[INFO] [stderr]     Checking unicode-script v0.5.7
[INFO] [stderr]     Checking fontconfig-parser v0.5.8
[INFO] [stderr]     Checking yazi v0.1.6
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]    Compiling ash v0.37.3+1.3.251
[INFO] [stderr]     Checking glam v0.25.0
[INFO] [stderr]     Checking unicode-ccc v0.2.0
[INFO] [stderr]     Checking unicode-bidi-mirroring v0.2.0
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]     Checking ttf-parser v0.21.1
[INFO] [stderr]     Checking web-time v1.1.0
[INFO] [stderr]     Checking ttf-parser v0.20.0
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]     Checking unicode-properties v0.1.3
[INFO] [stderr]     Checking weezl v0.1.10
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]    Compiling zerocopy-derive v0.8.27
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]    Compiling zvariant_derive v4.2.0
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]     Checking font-types v0.7.3
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling zbus_macros v4.4.0
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]     Checking read-fonts v0.22.7
[INFO] [stderr]    Compiling palette_derive v0.7.6
[INFO] [stderr]     Checking wayland-protocols v0.32.9
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]     Checking zvariant v4.2.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking rustybuzz v0.14.1
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking fontdb v0.16.2
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking jpeg-decoder v0.3.2
[INFO] [stderr]    Compiling wgpu-hal v0.19.5
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking zbus_names v3.0.0
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking hexf-parse v0.2.1
[INFO] [stderr]     Checking unicode-linebreak v0.1.5
[INFO] [stderr]     Checking cursor-icon v1.2.0
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]     Checking bit_field v0.10.3
[INFO] [stderr]     Checking zbus v4.4.0
[INFO] [stderr]    Compiling drm-sys v0.7.0
[INFO] [stderr]     Checking lebe v0.5.3
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking unicode-xid v0.2.6
[INFO] [stderr]     Checking self_cell v1.2.1
[INFO] [stderr]     Checking sys-locale v0.3.2
[INFO] [stderr]     Checking xcursor v0.3.10
[INFO] [stderr]     Checking rangemap v1.6.0
[INFO] [stderr]     Checking gif v0.13.3
[INFO] [stderr]     Checking wayland-cursor v0.31.11
[INFO] [stderr]     Checking naga v0.19.2
[INFO] [stderr]     Checking exr v1.73.0
[INFO] [stderr]     Checking skrifa v0.22.3
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.9
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking tiff v0.9.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]    Compiling wgpu-core v0.19.4
[INFO] [stderr]     Checking swash v0.1.19
[INFO] [stderr]     Checking wgpu-types v0.19.2
[INFO] [stderr]     Checking mutate_once v0.1.2
[INFO] [stderr]     Checking linux-raw-sys v0.6.5
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking renderdoc-sys v1.1.0
[INFO] [stderr]    Compiling drm-fourcc v2.2.0
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking kamadak-exif v0.5.5
[INFO] [stderr]     Checking smithay-client-toolkit v0.19.2
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]    Compiling wgpu v0.19.4
[INFO] [stderr]    Compiling tiny-xlib v0.2.4
[INFO] [stderr]     Checking iced_core v0.13.2
[INFO] [stderr]     Checking svg_fmt v0.4.5
[INFO] [stderr]     Checking drm-ffi v0.8.0
[INFO] [stderr]    Compiling softbuffer v0.4.6
[INFO] [stderr]     Checking float_next_after v1.0.0
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking ctor-lite v0.1.0
[INFO] [stderr]     Checking cosmic-text v0.12.1
[INFO] [stderr]     Checking lyon_tessellation v1.0.16
[INFO] [stderr]     Checking drm v0.12.0
[INFO] [stderr]     Checking etagere v0.2.15
[INFO] [stderr]     Checking iced_futures v0.13.2
[INFO] [stderr]     Checking lyon_algorithms v1.0.16
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.10
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking smithay-clipboard v0.7.2
[INFO] [stderr]     Checking guillotiere v0.6.2
[INFO] [stderr]     Checking lyon v1.0.16
[INFO] [stderr]     Checking kurbo v0.10.4
[INFO] [stderr]    Compiling winit v0.30.12
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking clipboard_wayland v0.2.2
[INFO] [stderr]     Checking iced_runtime v0.13.2
[INFO] [stderr]     Checking iced_graphics v0.13.0
[INFO] [stderr]     Checking clipboard_x11 v0.4.2
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.9
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking dpi v0.1.2
[INFO] [stderr]     Checking window_clipboard v0.4.1
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking iana-time-zone v0.1.64
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking iced_tiny_skia v0.13.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking iced_winit v0.13.0
[INFO] [stderr]     Checking iced_glyphon v0.6.0
[INFO] [stderr]     Checking iced_wgpu v0.13.5
[INFO] [stderr]     Checking iced_renderer v0.13.0
[INFO] [stderr]     Checking iced_widget v0.13.4
[INFO] [stderr]     Checking iced v0.13.1
[INFO] [stderr]     Checking fairy_chess_gui v1.0.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Board` and `EnPassantTarget`
[INFO] [stdout]  --> src/core/mod.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use board::{Board, EnPassantTarget};
[INFO] [stdout]   |                 ^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PerformanceTracker`
[INFO] [stdout]  --> src/core/mod.rs:9:72
[INFO] [stdout]   |
[INFO] [stdout] 9 |     DrawReason, GameResult, GameState, MoveAttemptResult, PendingMove, PerformanceTracker,
[INFO] [stdout]   |                                                                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BOARD_PADDING`
[INFO] [stdout]  --> src/drawing.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 |     self, BOARD_PADDING, DARK_SQUARE, HIGHLIGHT_COLOR, LIGHT_SQUARE, PIECE_COLOR_BLACK,
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::piece::PieceColor`
[INFO] [stdout]  --> src/engine/analysis.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::PieceColor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Position`
[INFO] [stdout]  --> src/engine/api.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::{GameState, Position, game_state::ExpandedMove};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/diffusion_engine.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/engine/diffusion_engine.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::board::Board`
[INFO] [stdout]  --> src/engine/flow_engine.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::core::board::Board;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/flow_engine.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::piece::PieceColor`
[INFO] [stdout]  --> src/engine/gravity_engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::PieceColor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::board::Board`
[INFO] [stdout]  --> src/engine/pressure_engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::board::Board;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/pressure_engine.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/engine/pressure_engine.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::piece::PieceColor`
[INFO] [stdout]  --> src/engine/probabilistic_search_engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::PieceColor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]   --> src/engine/pure_policy_engine.rs:21:26
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::game_state::ExpandedMove`
[INFO] [stdout]  --> src/engine/random_engine.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::game_state::ExpandedMove;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MateStatus`
[INFO] [stdout]  --> src/engine/search.rs:3:57
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::core::game_state::{ExpandedMove, GameResult, MateStatus, MoveGenerationResult};
[INFO] [stdout]   |                                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EvaluatorTrait`
[INFO] [stdout]  --> src/engine/simple_engine.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::engine::evaluator::{Evaluator, EvaluatorTrait};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/vanguard_engine.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Evaluation` and `SearchResult`
[INFO] [stdout]   --> src/engine/mod.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub use api::{ChessEngine, Evaluation, SearchParams, SearchResult};
[INFO] [stdout]    |                            ^^^^^^^^^^                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `analysis::MoveEvaluation`
[INFO] [stdout]   --> src/engine/mod.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use analysis::MoveEvaluation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ParameterDef` and `ParameterizedEngine`
[INFO] [stdout]   --> src/engine/mod.rs:53:40
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub use parameters::{EngineParameters, ParameterDef, ParameterizedEngine};
[INFO] [stdout]    |                                        ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PieceColor` and `Piece`
[INFO] [stdout]  --> src/pgn.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/promotion.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::game_state::MateStatus`
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::core::game_state::MateStatus;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/main.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]   --> src/engine/random_engine.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let mut rng = rand::thread_rng();
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Board` and `EnPassantTarget`
[INFO] [stdout]  --> src/core/mod.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use board::{Board, EnPassantTarget};
[INFO] [stdout]   |                 ^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PerformanceTracker`
[INFO] [stdout]  --> src/core/mod.rs:9:72
[INFO] [stdout]   |
[INFO] [stdout] 9 |     DrawReason, GameResult, GameState, MoveAttemptResult, PendingMove, PerformanceTracker,
[INFO] [stdout]   |                                                                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BOARD_PADDING`
[INFO] [stdout]  --> src/drawing.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 |     self, BOARD_PADDING, DARK_SQUARE, HIGHLIGHT_COLOR, LIGHT_SQUARE, PIECE_COLOR_BLACK,
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::piece::PieceColor`
[INFO] [stdout]  --> src/engine/analysis.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::PieceColor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Position`
[INFO] [stdout]  --> src/engine/api.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::{GameState, Position, game_state::ExpandedMove};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/diffusion_engine.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/engine/diffusion_engine.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::board::Board`
[INFO] [stdout]  --> src/engine/flow_engine.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::core::board::Board;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/flow_engine.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::piece::PieceColor`
[INFO] [stdout]  --> src/engine/gravity_engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::PieceColor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::board::Board`
[INFO] [stdout]  --> src/engine/pressure_engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::board::Board;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/pressure_engine.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/engine/pressure_engine.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::piece::PieceColor`
[INFO] [stdout]  --> src/engine/probabilistic_search_engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::PieceColor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]   --> src/engine/pure_policy_engine.rs:21:26
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::game_state::ExpandedMove`
[INFO] [stdout]  --> src/engine/random_engine.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::game_state::ExpandedMove;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MateStatus`
[INFO] [stdout]  --> src/engine/search.rs:3:57
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::core::game_state::{ExpandedMove, GameResult, MateStatus, MoveGenerationResult};
[INFO] [stdout]   |                                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EvaluatorTrait`
[INFO] [stdout]  --> src/engine/simple_engine.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::engine::evaluator::{Evaluator, EvaluatorTrait};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Piece`
[INFO] [stdout]  --> src/engine/vanguard_engine.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Evaluation` and `SearchResult`
[INFO] [stdout]   --> src/engine/mod.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub use api::{ChessEngine, Evaluation, SearchParams, SearchResult};
[INFO] [stdout]    |                            ^^^^^^^^^^                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `analysis::MoveEvaluation`
[INFO] [stdout]   --> src/engine/mod.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use analysis::MoveEvaluation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ParameterDef` and `ParameterizedEngine`
[INFO] [stdout]   --> src/engine/mod.rs:53:40
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub use parameters::{EngineParameters, ParameterDef, ParameterizedEngine};
[INFO] [stdout]    |                                        ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PieceColor` and `Piece`
[INFO] [stdout]  --> src/pgn.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::core::piece::{Piece, PieceColor};
[INFO] [stdout]   |                          ^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/promotion.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::game_state::MateStatus`
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::core::game_state::MateStatus;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/main.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]   --> src/engine/random_engine.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let mut rng = rand::thread_rng();
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config_manager`
[INFO] [stdout]   --> src/engine/flow_engine.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         config_manager: &PieceConfigManager,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_config_manager`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_size`
[INFO] [stdout]    --> src/engine/probabilistic_search_engine.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let board_size = state.board.size();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_generator`
[INFO] [stdout]    --> src/engine/probabilistic_search_engine.rs:432:9
[INFO] [stdout]     |
[INFO] [stdout] 432 |         move_generator: &MoveGenerator,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_generator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_size`
[INFO] [stdout]    --> src/engine/probabilistic_search_engine.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let board_size = params.state.board.size();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flat_size`
[INFO] [stdout]    --> src/engine/pst_engine.rs:460:13
[INFO] [stdout]     |
[INFO] [stdout] 460 |         let flat_size = rows * cols;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flat_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/engine/pure_policy_engine.rs:446:9
[INFO] [stdout]     |
[INFO] [stdout] 446 |     let mut gather = |color: PieceColor| -> Vec<f64> {
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/engine/pure_policy_engine.rs:599:14
[INFO] [stdout]     |
[INFO] [stdout] 599 |         let (rows, cols) = board.size();
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config_manager`
[INFO] [stdout]   --> src/engine/flow_engine.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         config_manager: &PieceConfigManager,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_config_manager`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/engine/vanguard_engine.rs:186:13
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let mut get_attackers = |color: PieceColor| -> Vec<f64> {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_size`
[INFO] [stdout]    --> src/engine/probabilistic_search_engine.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let board_size = state.board.size();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_generator`
[INFO] [stdout]    --> src/engine/probabilistic_search_engine.rs:432:9
[INFO] [stdout]     |
[INFO] [stdout] 432 |         move_generator: &MoveGenerator,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_generator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_size`
[INFO] [stdout]    --> src/engine/probabilistic_search_engine.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let board_size = params.state.board.size();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flat_size`
[INFO] [stdout]    --> src/engine/pst_engine.rs:460:13
[INFO] [stdout]     |
[INFO] [stdout] 460 |         let flat_size = rows * cols;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flat_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/engine/pure_policy_engine.rs:446:9
[INFO] [stdout]     |
[INFO] [stdout] 446 |     let mut gather = |color: PieceColor| -> Vec<f64> {
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/engine/pure_policy_engine.rs:599:14
[INFO] [stdout]     |
[INFO] [stdout] 599 |         let (rows, cols) = board.size();
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `piece_type`
[INFO] [stdout]    --> src/promotion.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         piece_type: usize,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piece_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/engine/vanguard_engine.rs:186:13
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let mut get_attackers = |color: PieceColor| -> Vec<f64> {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let mut asset_manager = AssetManager::new();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `piece_type`
[INFO] [stdout]    --> src/promotion.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         piece_type: usize,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piece_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let mut asset_manager = AssetManager::new();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]     --> src/main.rs:2995:29
[INFO] [stdout]      |
[INFO] [stdout] 2995 |                     .style(|theme, status| {
[INFO] [stdout]      |                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ProbabilityField` is more private than the item `DiffusionStep::field`
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:366:5
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub field: ProbabilityField,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `DiffusionStep::field` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ProbabilityField` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:101:1
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct ProbabilityField {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_game_file_path`, `list_piece_textures`, `has_assets`, `get_current_browse_dir`, and `list_pieces_files` are never used
[INFO] [stdout]    --> src/asset_manager.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl AssetManager {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn get_game_file_path(&self, filename: &str) -> Option<PathBuf> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn list_piece_textures(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn has_assets(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     pub fn get_current_browse_dir(&self) -> Option<&PathBuf> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn list_pieces_files(&self) -> Vec<BrowserItem> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_turn` is never read
[INFO] [stdout]    --> src/background.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct DisplaySnapshot {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 130 |     pub board: Board,
[INFO] [stdout] 131 |     pub current_turn: PieceColor,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_BOARD_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const MIN_BOARD_SIZE: usize = 3; // Minimum supported board dimension
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_BOARD_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:32:11
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub const DEFAULT_BOARD_SIZE: usize = 8; // Standard chess board
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveEvaluation` is never constructed
[INFO] [stdout]  --> src/engine/analysis.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct MoveEvaluation {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_position` is never used
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:280:8
[INFO] [stdout]     |
[INFO] [stdout] 278 | impl MovePolicy {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 279 |     /// Create move policy from current position
[INFO] [stdout] 280 |     fn from_position(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DiffusionStep` is never constructed
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct DiffusionStep {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `debug_mode` is never read
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:386:5
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub struct DiffusionEngine {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 385 |     parameters: EngineParameters,
[INFO] [stdout] 386 |     debug_mode: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_delta` is never used
[INFO] [stdout]   --> src/engine/evaluator.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub trait EvaluatorTrait {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn calculate_delta(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `rays_for` is never used
[INFO] [stdout]    --> src/engine/influence_engine.rs:504:8
[INFO] [stdout]     |
[INFO] [stdout] 370 | impl EvalData {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 504 |     fn rays_for(&self, pt: usize, color_idx: usize, from_flat: usize) -> &[AttackRay] {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flat_pos` is never read
[INFO] [stdout]    --> src/engine/pst_engine.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct HvpEntry {
[INFO] [stdout]     |        -------- field in this struct
[INFO] [stdout] 351 |     flat_pos: u16, // row * cols + col, fits u16 for boards up to 256x256
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HvpEntry` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `evaluate_position_with_pst` is never used
[INFO] [stdout]     --> src/engine/pst_engine.rs:2443:12
[INFO] [stdout]      |
[INFO] [stdout] 1589 | impl PstEngine {
[INFO] [stdout]      | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2443 |     pub fn evaluate_position_with_pst(
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `find_best_move` and `evaluate_all_moves` are never used
[INFO] [stdout]    --> src/engine/search.rs:606:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl<'a, E: EvaluatorTrait> Search<'a, E> {
[INFO] [stdout]     | ----------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 606 |     pub fn find_best_move(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 616 |     pub fn evaluate_all_moves(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MateInTwoResult` is never constructed
[INFO] [stdout]    --> src/engine/search.rs:645:12
[INFO] [stdout]     |
[INFO] [stdout] 645 | pub struct MateInTwoResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `move_generator` is never read
[INFO] [stdout]    --> src/engine/territory_engine.rs:553:5
[INFO] [stdout]     |
[INFO] [stdout] 551 | struct TerritoryEvaluator<'a> {
[INFO] [stdout]     |        ------------------ field in this struct
[INFO] [stdout] 552 |     engine: &'a TerritoryEngine,
[INFO] [stdout] 553 |     move_generator: &'a MoveGenerator,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `thinking` and `time_limit` are never read
[INFO] [stdout]   --> src/engine/game_controller.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct GameController {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     thinking: bool,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     time_limit: Option<Duration>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_thinking`, `set_thinking`, and `make_engine_move` are never used
[INFO] [stdout]    --> src/engine/game_controller.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl GameController {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn is_thinking(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn set_thinking(&mut self, thinking: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub fn make_engine_move(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_parameters_changed` is never used
[INFO] [stdout]   --> src/engine/parameters.rs:96:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub trait ParameterizedEngine {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 96 |     fn on_parameters_changed(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count` is never used
[INFO] [stdout]    --> src/engine/personality.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 | pub fn count() -> usize {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `properties` is never read
[INFO] [stdout]    --> src/move_generator.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct CompiledPiece {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] 148 |     pub moves: Vec<Arc<CompiledMove>>,
[INFO] [stdout] 149 |     pub properties: crate::piece_config::PieceProperties,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CompiledPiece` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `parse_headers` is never used
[INFO] [stdout]    --> src/pgn.rs:372:12
[INFO] [stdout]     |
[INFO] [stdout] 336 | impl PgnImporter {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 372 |     pub fn parse_headers(pgn: &str) -> HashMap<String, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GuiPromotionSelector` is never constructed
[INFO] [stdout]    --> src/promotion.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub struct GuiPromotionSelector;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `asset_manager` is never read
[INFO] [stdout]   --> src/texture_manager.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct TextureManager {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 10 |     textures: HashMap<String, image::Handle>,
[INFO] [stdout] 11 |     asset_manager: AssetManager,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TextureManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_textures`, `texture_count`, `list_loaded_textures`, and `has_assets` are never used
[INFO] [stdout]    --> src/texture_manager.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl TextureManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn has_textures(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn texture_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn list_loaded_textures(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn has_assets(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_mate_status` is never used
[INFO] [stdout]   --> src/tournament.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | impl GameOutcome {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn from_mate_status(status: MateStatus, side_to_move: PieceColor) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_draw` is never used
[INFO] [stdout]   --> src/tournament.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl Termination {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 98 |     pub fn is_draw(self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `game_number`, `white_rating_after`, and `black_rating_after` are never read
[INFO] [stdout]    --> src/tournament.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct GameRecord {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 176 |     pub game_number: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub white_rating_after: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 185 |     pub black_rating_after: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GameRecord` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `total_credits` is never used
[INFO] [stdout]    --> src/tournament.rs:803:8
[INFO] [stdout]     |
[INFO] [stdout] 792 | impl PairingPool {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 803 |     fn total_credits(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SettingUpGame` is never constructed
[INFO] [stdout]    --> src/tournament.rs:947:5
[INFO] [stdout]     |
[INFO] [stdout] 945 | pub enum TournamentPhase {
[INFO] [stdout]     |          --------------- variant in this enum
[INFO] [stdout] 946 |     Inactive,
[INFO] [stdout] 947 |     SettingUpGame,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TournamentPhase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_playing`, `current_pairing`, `begin_game`, and `draw_next_pairing` are never used
[INFO] [stdout]     --> src/tournament.rs:1012:12
[INFO] [stdout]      |
[INFO] [stdout]  988 | impl Tournament {
[INFO] [stdout]      | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1012 |     pub fn is_playing(&self) -> bool {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1024 |     pub fn current_pairing(&self) -> Option<&(EngineType, EngineType)> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1068 |     pub fn begin_game(&mut self) {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1163 |     fn draw_next_pairing(&mut self) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_position_hash` is never used
[INFO] [stdout]   --> src/zobrist.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn calculate_position_hash(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]     --> src/main.rs:2995:29
[INFO] [stdout]      |
[INFO] [stdout] 2995 |                     .style(|theme, status| {
[INFO] [stdout]      |                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ProbabilityField` is more private than the item `DiffusionStep::field`
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:366:5
[INFO] [stdout]     |
[INFO] [stdout] 366 |     pub field: ProbabilityField,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `DiffusionStep::field` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ProbabilityField` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:101:1
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct ProbabilityField {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_game_file_path`, `list_piece_textures`, `has_assets`, `get_current_browse_dir`, and `list_pieces_files` are never used
[INFO] [stdout]    --> src/asset_manager.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl AssetManager {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn get_game_file_path(&self, filename: &str) -> Option<PathBuf> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn list_piece_textures(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn has_assets(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     pub fn get_current_browse_dir(&self) -> Option<&PathBuf> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn list_pieces_files(&self) -> Vec<BrowserItem> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_turn` is never read
[INFO] [stdout]    --> src/background.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct DisplaySnapshot {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 130 |     pub board: Board,
[INFO] [stdout] 131 |     pub current_turn: PieceColor,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_BOARD_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const MIN_BOARD_SIZE: usize = 3; // Minimum supported board dimension
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_BOARD_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:32:11
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub const DEFAULT_BOARD_SIZE: usize = 8; // Standard chess board
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveEvaluation` is never constructed
[INFO] [stdout]  --> src/engine/analysis.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct MoveEvaluation {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_position` is never used
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:280:8
[INFO] [stdout]     |
[INFO] [stdout] 278 | impl MovePolicy {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 279 |     /// Create move policy from current position
[INFO] [stdout] 280 |     fn from_position(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DiffusionStep` is never constructed
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct DiffusionStep {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `debug_mode` is never read
[INFO] [stdout]    --> src/engine/diffusion_engine.rs:386:5
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub struct DiffusionEngine {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 385 |     parameters: EngineParameters,
[INFO] [stdout] 386 |     debug_mode: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_delta` is never used
[INFO] [stdout]   --> src/engine/evaluator.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub trait EvaluatorTrait {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn calculate_delta(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `rays_for` is never used
[INFO] [stdout]    --> src/engine/influence_engine.rs:504:8
[INFO] [stdout]     |
[INFO] [stdout] 370 | impl EvalData {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 504 |     fn rays_for(&self, pt: usize, color_idx: usize, from_flat: usize) -> &[AttackRay] {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flat_pos` is never read
[INFO] [stdout]    --> src/engine/pst_engine.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct HvpEntry {
[INFO] [stdout]     |        -------- field in this struct
[INFO] [stdout] 351 |     flat_pos: u16, // row * cols + col, fits u16 for boards up to 256x256
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HvpEntry` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `evaluate_position_with_pst` is never used
[INFO] [stdout]     --> src/engine/pst_engine.rs:2443:12
[INFO] [stdout]      |
[INFO] [stdout] 1589 | impl PstEngine {
[INFO] [stdout]      | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2443 |     pub fn evaluate_position_with_pst(
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `find_best_move` and `evaluate_all_moves` are never used
[INFO] [stdout]    --> src/engine/search.rs:606:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl<'a, E: EvaluatorTrait> Search<'a, E> {
[INFO] [stdout]     | ----------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 606 |     pub fn find_best_move(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 616 |     pub fn evaluate_all_moves(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MateInTwoResult` is never constructed
[INFO] [stdout]    --> src/engine/search.rs:645:12
[INFO] [stdout]     |
[INFO] [stdout] 645 | pub struct MateInTwoResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `move_generator` is never read
[INFO] [stdout]    --> src/engine/territory_engine.rs:553:5
[INFO] [stdout]     |
[INFO] [stdout] 551 | struct TerritoryEvaluator<'a> {
[INFO] [stdout]     |        ------------------ field in this struct
[INFO] [stdout] 552 |     engine: &'a TerritoryEngine,
[INFO] [stdout] 553 |     move_generator: &'a MoveGenerator,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `thinking` and `time_limit` are never read
[INFO] [stdout]   --> src/engine/game_controller.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct GameController {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     thinking: bool,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     time_limit: Option<Duration>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_thinking`, `set_thinking`, and `make_engine_move` are never used
[INFO] [stdout]    --> src/engine/game_controller.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl GameController {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn is_thinking(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn set_thinking(&mut self, thinking: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub fn make_engine_move(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_parameters_changed` is never used
[INFO] [stdout]   --> src/engine/parameters.rs:96:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub trait ParameterizedEngine {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 96 |     fn on_parameters_changed(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count` is never used
[INFO] [stdout]    --> src/engine/personality.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 | pub fn count() -> usize {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `properties` is never read
[INFO] [stdout]    --> src/move_generator.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct CompiledPiece {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] 148 |     pub moves: Vec<Arc<CompiledMove>>,
[INFO] [stdout] 149 |     pub properties: crate::piece_config::PieceProperties,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CompiledPiece` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `parse_headers` is never used
[INFO] [stdout]    --> src/pgn.rs:372:12
[INFO] [stdout]     |
[INFO] [stdout] 336 | impl PgnImporter {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 372 |     pub fn parse_headers(pgn: &str) -> HashMap<String, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GuiPromotionSelector` is never constructed
[INFO] [stdout]    --> src/promotion.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub struct GuiPromotionSelector;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `asset_manager` is never read
[INFO] [stdout]   --> src/texture_manager.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct TextureManager {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 10 |     textures: HashMap<String, image::Handle>,
[INFO] [stdout] 11 |     asset_manager: AssetManager,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TextureManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_textures`, `texture_count`, `list_loaded_textures`, and `has_assets` are never used
[INFO] [stdout]    --> src/texture_manager.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl TextureManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn has_textures(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn texture_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn list_loaded_textures(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn has_assets(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_mate_status` is never used
[INFO] [stdout]   --> src/tournament.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | impl GameOutcome {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn from_mate_status(status: MateStatus, side_to_move: PieceColor) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_draw` is never used
[INFO] [stdout]   --> src/tournament.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl Termination {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 98 |     pub fn is_draw(self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `game_number`, `white_rating_after`, and `black_rating_after` are never read
[INFO] [stdout]    --> src/tournament.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct GameRecord {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 176 |     pub game_number: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub white_rating_after: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 185 |     pub black_rating_after: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GameRecord` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `total_credits` is never used
[INFO] [stdout]    --> src/tournament.rs:803:8
[INFO] [stdout]     |
[INFO] [stdout] 792 | impl PairingPool {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 803 |     fn total_credits(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SettingUpGame` is never constructed
[INFO] [stdout]    --> src/tournament.rs:947:5
[INFO] [stdout]     |
[INFO] [stdout] 945 | pub enum TournamentPhase {
[INFO] [stdout]     |          --------------- variant in this enum
[INFO] [stdout] 946 |     Inactive,
[INFO] [stdout] 947 |     SettingUpGame,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TournamentPhase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_playing`, `current_pairing`, `begin_game`, and `draw_next_pairing` are never used
[INFO] [stdout]     --> src/tournament.rs:1012:12
[INFO] [stdout]      |
[INFO] [stdout]  988 | impl Tournament {
[INFO] [stdout]      | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1012 |     pub fn is_playing(&self) -> bool {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1024 |     pub fn current_pairing(&self) -> Option<&(EngineType, EngineType)> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1068 |     pub fn begin_game(&mut self) {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1163 |     fn draw_next_pairing(&mut self) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_position_hash` is never used
[INFO] [stdout]   --> src/zobrist.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn calculate_position_hash(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 44s
[INFO] running `Command { std: "docker" "inspect" "d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8", kill_on_drop: false }`
[INFO] [stdout] d790939f31ed9a6bf144cb8a02cc627cb10c7616ee300cba8e23a20054679ee8
